<template>
    <div>
        <navigation-bar>
            <div class="searchContent">
                <custom-button type="download" style="margin-right: 10px" @downloadClick="exportXls" title="下载身份及定价模版"></custom-button>
                <custom-button type="download" style="margin-right: 10px" @downloadClick="exportXls" title="下载楼栋建筑模版"></custom-button>
                <custom-button type="download" style="margin-right: 10px" @downloadClick="exportXls" title="下载房间设备模版"></custom-button>
                <custom-button type="download" style="margin-right: 10px" @downloadClick="exportXls" title="下载网关采集模版"></custom-button>
                <custom-button
                    type="import"
                    style="margin-right: 10px"
                    @uploadSuccess="pageChange(1)"
                    importUrl="/ccdc/cfg/expOutInquiry/importExcel"
                    title="导入身份及定价模版"
                ></custom-button>
                <custom-button
                    type="import"
                    style="margin-right: 10px"
                    @uploadSuccess="pageChange(1)"
                    importUrl="/ccdc/cfg/expOutInquiry/importExcel"
                    title="导入楼栋建筑模版"
                ></custom-button>
                <custom-button
                    type="import"
                    style="margin-right: 10px"
                    @uploadSuccess="pageChange(1)"
                    importUrl="/ccdc/cfg/expOutInquiry/importExcel"
                    title="导入房间设备模版"
                ></custom-button>
                <custom-button
                    type="import"
                    @uploadSuccess="pageChange(1)"
                    importUrl="/ccdc/cfg/expOutInquiry/importExcel"
                    title="导入网关采集模版"
                ></custom-button>
            </div>
        </navigation-bar>
        <div v-if="false">
            <table-index
                :dataSource="dataSource"
                :tableColumns="tableColumns"
                :btnList="btnList"
                :pageSize="pageSize"
                :pageCount="pageCount"
                :pageNo="pageNo"
                @pageChange="pageChange"
                @editRow="editRow"
                @viewRow="viewRow"
                @deleteRow="deleteRow"
                selection
                @handleSelectionChange="handleSelectionChange"
            ></table-index>
        </div>

        <div v-if="dialogShow">
            <custom-dialog :title="dialogTitle" size="large" @dialogClose="dialogClose">
                <form-index :formConfig="formConfig" @submit="submit" :type="type" @formInputChange="formInputChange" ref="form">
                    <!--  <div>这里还可以插入其它内容进行拓展</div> -->
                </form-index>
            </custom-dialog>
        </div>
    </div>
</template>

<script>
import {updateLogManageForm} from "@/assets/form/managementCenter/systemManage/updateLogManage.js"
import customDialog from "@/components/customComponents/customDialog"
import customButton from "@/components/customComponents/customForm/customButton"
import formIndex from "@/components/customComponents/customForm/formIndex"
import tableIndex from "@/components/customComponents/customeTable/tableIndex"
import navigationBar from "@/components/customComponents/managementCenter/navigationBar"
// import {AjaxCommon} from "@/libs/apiCommon"
import {CardId} from "@/libs/cardId"
import {PopupCommon} from "@/libs/popupCommon"
import {SessionCommon} from "@/libs/sessionCommon"
import {Utility} from "@/libs/utility"
import {logUpdateList} from "@/mockData/systemManage.js"
export default {
    components: {
        navigationBar,
        customButton,
        tableIndex,
        customDialog,
        formIndex
    },
    data() {
        return {
            selectDeviceList: [],
            unitName: "",
            device_type: "",
            device_typeList: Utility.getDictList("device_type"),
            status: "",
            statusList: Utility.getDictList("status"),
            // table 相关参数  begin
            dataSource: logUpdateList,
            tableColumns: [
                {
                    prop: "version",
                    label: "版本"
                },
                {
                    prop: "changeStatus",
                    label: "变化状态",
                    dictName: "changeStatus"
                },
                {
                    prop: "updateContent",
                    label: "修改内容、页码及条款"
                },
                {
                    prop: "updatePerson",
                    label: "修改人"
                },
                {
                    prop: "pzr",
                    label: "批准人"
                },
                {
                    prop: "updateTime",
                    label: "修改日期"
                }
            ],
            btnList: ["edit", "view", "delete"],
            pageSize: 20,
            pageCount: 100,
            pageNo: 1,
            // table 相关参数  end

            // 弹窗是否显示
            dialogShow: false,
            // 弹窗标题 (新增修改不同)
            dialogTitle: "",

            // form的配置信息
            formConfig: updateLogManageForm,
            type: "add"
        }
    },

    methods: {
        exportXls() {},
        customClick(type) {
            if (this.selectDeviceList.length < 1) {
                PopupCommon.notify("info", "请选择至少一个机构")
                return
            }
            PopupCommon.notify("success", type == 1 ? "启用成功" : "禁用成功")
        },

        handleSelectionChange(d) {
            this.selectDeviceList = d
        },
        formInputChange(e) {
            if (e.filedName == "idCard") {
                const data = CardId.getInfoByCardId(e.value)
                if (data) {
                    let newData = e.allData
                    newData["birthday"] = data.birthday
                    newData["sex"] = data.sex
                    this.$refs.form.changeFormValue(newData)
                }
            }
        },
        submit(d) {
            // let self = this
            console.log(d)
            PopupCommon.notify("success", "操作成功")
            // if (d.id) {
            //     AjaxCommon("/ccdc/cfg/device/device/edit", "post", d)
            //         .then((res) => {
            //             if (res.data.code == 200) {
            //                 PopupCommon.notify("success", "操作成功")
            //                 self.initPage()
            //                 self.dialogClose()
            //             } else {
            //                 PopupCommon.notify("error", res.data.message)
            //             }
            //         })
            //         .catch((err) => {
            //             PopupCommon.notify("error", err.message)
            //         })
            // } else {
            //     delete d.id
            //     AjaxCommon("/ccdc/cfg/device/device/add", "post", d)
            //         .then((res) => {
            //             if (res.data.code == 200) {
            //                 PopupCommon.notify("success", "操作成功")
            //                 self.initPage()
            //                 self.dialogClose()
            //             } else {
            //                 PopupCommon.notify("error", res.data.message)
            //             }
            //         })
            //         .catch((err) => {
            //             PopupCommon.notify("error", err.message)
            //         })
            // }
        },
        dialogClose() {
            this.dialogShow = false
        },
        searchClick() {
            this.pageNo = 1
            this.initPage()
        },
        resetClick() {
            this.unitName = ""
            this.status = ""
            this.device_type = ""
        },
        addClick() {
            let formConfigItem = this.formConfig
            formConfigItem.map((t) => {
                Object.keys(t).map((res) => {
                    if (res == "fieldName") {
                        t.filedValue = ""
                    }
                })
            })
            this.formConfig = formConfigItem
            this.type = "add"
            this.dialogShow = true
            this.dialogTitle = "新增" + JSON.parse(SessionCommon.getCurrentMenuInfo()).title
        },
        // 分页点击事件
        pageChange(p) {
            this.pageNo = p
            this.initPage()
        },
        editRow(d) {
            this.type = "edit"
            let formConfigItem = this.formConfig
            formConfigItem.map((t) => {
                Object.keys(t).map((res) => {
                    if (res == "fieldName") {
                        t.filedValue = d.data[t[res]]
                    }
                })
            })
            this.formConfig = formConfigItem
            this.dialogShow = true
            this.dialogTitle = "编辑" + JSON.parse(SessionCommon.getCurrentMenuInfo()).title
        },
        viewRow(d) {
            this.type = "look"
            let formConfigItem = this.formConfig
            formConfigItem.map((t) => {
                Object.keys(t).map((res) => {
                    if (res == "fieldName") {
                        t.filedValue = d.data[t[res]]
                    }
                })
            })
            this.formConfig = formConfigItem
            this.dialogShow = true
            this.dialogTitle = "查看" + JSON.parse(SessionCommon.getCurrentMenuInfo()).title
        },
        deleteRow(d) {
            console.log(d)
            PopupCommon.notify("success", "删除成功")
            // const id = d.data.id
            // let self = this
            // AjaxCommon("/ccdc/cfg/device/device/delete?id=" + id, "delete", {
            //     optReason: d.optReason
            // }).then((res) => {
            //     console.log(res, "res...............")
            //     if (res.data.code == 200) {
            //         PopupCommon.notify("success", "删除成功")
            //         self.initPage()
            //         self.dialogClose()
            //     } else {
            //         PopupCommon.notify("error", res.data.message)
            //     }
            // })
        },
        // 初始化事件
        initPage() {
            //   let self = this;
            //   AjaxCommon("/ccdc/cfg/device/device/listByPage", "post", {
            //     unitName: this.unitName,
            //     deviceStatus: this.status,
            //     deviceType: this.device_type,
            //     pageNo: this.pageNo,
            //     pageSize: this.pageSize,
            //   }).then((res) => {
            //     if (res.data.code == 200) {
            //       self.dataSource = res.data.result.records;
            //       self.pageCount = res.data.result.total;
            //     } else {
            //       PopupCommon.notify("error", res.data.message);
            //     }
            //   });
        }
    },
    mounted() {
        this.initPage()
    }
}
</script>

<style></style>
